package com.gmrz.webauthn.protocol.v1.schema;

import com.google.gson.annotations.Expose;
import com.google.gson.annotations.SerializedName;

import java.util.List;
import java.util.Map;


public class PublicKeyCredentialRequestOptions {
    @SerializedName("challenge")
    @Expose
    private String challenge;
    @SerializedName("timeout")
    @Expose
    private long timeoutMS;
    @SerializedName("rpId")
    @Expose
    private String rpId;
    @SerializedName("allowCredentials")
    @Expose
    private List<PublicKeyCredentialDescriptor> allowCredentials;
    @SerializedName("userVerification")
    @Expose
    UserVerificationRequirement userVerification;
    @SerializedName("extensions")
    @Expose
    private Map<String, Object> extensions;

    public UserVerificationRequirement getUserVerification() {
        return this.userVerification;
    }

    public void setUserVerification(UserVerificationRequirement userVerification) {
        this.userVerification = userVerification;
    }


    public String getChallenge() {
        return this.challenge;
    }

    public void setChallenge(String challenge) {
        this.challenge = challenge;
    }

    public long getTimeoutMS() {
        return this.timeoutMS;
    }

    public void setTimeoutMS(long timeoutMS) {
        this.timeoutMS = timeoutMS;
    }

    public String getRpId() {
        return this.rpId;
    }

    public void setRpId(String rpId) {
        this.rpId = rpId;
    }

    public List<PublicKeyCredentialDescriptor> getAllowList() {
        return this.allowCredentials;
    }

    public void setAllowList(List<PublicKeyCredentialDescriptor> allowCredentials) {
        this.allowCredentials = allowCredentials;
    }

    public Map<String, Object> getExtensions() {
        return this.extensions;
    }

    public void setExtensions(Map<String, Object> extensions) {
        this.extensions = extensions;
    }
}
